﻿using System;
using System.Windows;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ResPackClient
{
    /*
     * [NOM] Msg
     * [FONCTION(S)] Facilite l'affichage des messages d erreur et d avertissement
     * [INVARIANCE(S)] Aucune instance ne peut etre cree ou detruite(composer seulement de fonctions statiques)
     */
    sealed class Msg
    {
    /*====================================================
     * CONSTRUCTOR(S)
     * ==================================================*/
        private Msg() { }
    /*====================================================
     * PUBLIC(S)
     * ==================================================*/
        /*
         * [FONCTION(S)] 
         *  - Affiche une message d avertissement
         * [PARAM(S)]
         *  - id : Identifiant  pour le string (voir fichier AppString)
         * [PRE-CONDITION(S)]
         *  - le parametre (id) doit correspondre a un string contenu dans le 
         *      fichier AppString.
         * [POST-CONDITION(S)]
         *  - Un message est affiche portant le message correspondant au parametre (id)
         */
        static public void Warning(string id)//voir le fichier AppString pour l'id
        {
            string title = (string)ResPackApp.Current.Resources["STR_WARNING"];
            string msg = (string)ResPackApp.Current.Resources[id];
            MessageBox.Show(msg, title, MessageBoxButton.OK, MessageBoxImage.Warning);
        }
        /*
         * [FONCTION(S)] 
         *  - Affiche une message d erreur.
         *  - Envoie un email au programmeur avec le message d erreur correspondant (a venir).
         * [PARAM(S)]
         *  - id : Identifiant  pour le string (voir fichier AppString)
         * [PRE-CONDITION(S)]
         *  - le parametre (id) doit correspondre a un string contenu dans le 
         *      fichier AppString.
         * [POST-CONDITION(S)]
         *  - Un message est affiche portant le message correspondant au parametre (id)
         */
        static public void Error(string id)//voir le fichier AppString pour l'id
        {
            string title = (string)ResPackApp.Current.Resources["STR_ERR"];
            string msg = (string)ResPackApp.Current.Resources[id];
            MessageBox.Show(msg, title, MessageBoxButton.OK, MessageBoxImage.Error);
            //TODO envoie de message au programmeur.
        }
    };
};
